package control;

import model.dataAccess.*;

public class TableroBean {

	public String archivo = "";
	public int dificultad;
	public String[] rutas;

	public String getArchivo() {
		return archivo;
	}

	public void setArchivo(String archivo) {
		this.archivo = archivo;
	}

	public int getDificultad() {
		return dificultad;
	}

	public void setDificultad(int dificultad) {
		this.dificultad = dificultad;
	}

	public AdmTablero admTablero = new AdmTablero();

	public AdmTablero getAdmTablero() {
		return admTablero;
	}

	public void setAdmTablero(AdmTablero admTablero) {
		this.admTablero = admTablero;
	}

	public String[] getRutas() {
		return rutas;
	}

	public void setRutas(String[] rutas) {
		this.rutas = rutas;
	}

	public String iniciarTablero() {
		System.out.print("dif archiv: " + dificultad + archivo);
		admTablero.iniciarTablero(dificultad, archivo);
		this.rutas = admTablero.ahorcado.estado;

		return "irATablero";
	}

	public boolean verificarSeleccionada(char letra) {
		boolean sel = admTablero.verificarSeleccionada(letra);
		return sel;
	}

	public String detectarLetra(char letra) {
		admTablero.deshabilitarLetra(letra);
		if (this.admTablero.palabraSolucion.isResuelta()
				|| this.admTablero.ahorcado.terminado) {
			return "finDelJuego";
		} else
			return "tablero.jsp";
	}

	public String guardarJuego(String nombreDeUsuario) {
		boolean guardado = this.admTablero.guardarJuego(nombreDeUsuario);
		System.out.println("guardado: " + guardado + nombreDeUsuario);
		return "guardarJuego";
	}

	public boolean existeJuego(String nombreDeUsuario) {
		System.out.println("usuarioa activo: " + nombreDeUsuario);
		boolean existe = this.admTablero
				.verificarJuegoGuardado(nombreDeUsuario);
		return existe;
	}

	public String cargarJuego(String nombreUsuario) {
		System.out.println("entro a cargarJuego");
		boolean cargado = this.admTablero.leerJuego(nombreUsuario);
		if (cargado) {
			System.out.println("tablero jsp");
			this.rutas = this.admTablero.ahorcado.estado;
			return "continuarJuego";
		} else {
			System.out.println("menu jsp");
			return "menuPrincipal.jsp";
		}
	}

	AdmUsuario admUsuario = new AdmUsuario();

	public String mostrarPuntuacion(String nombreUsuario){
		System.out.println("usuario!!!!!!!"+nombreUsuario);
		int id=this.admUsuario.buscarUsuario(nombreUsuario);
		System.out.println("id: "+id);
		String info= this.admTablero.actualizarPuntuacion(nombreUsuario, id);
		
		return info;
	}
}
